function selectAll(source) {
  checkboxes = document.getElementsByName('selectUsers');
  for(var i=0, n=checkboxes.length;i<n;i++) {
	    checkboxes[i].checked = source.checked;
  }
} 

function updateURLParameter(url, param, paramVal){
    var newAdditionalURL = "";
    var tempArray = url.split("?");
    var baseURL = tempArray[0];
    var additionalURL = tempArray[1];
    var temp = "";
    if (additionalURL) {
        tempArray = additionalURL.split("&");
        for (i=0; i<tempArray.length; i++){
            if(tempArray[i].split('=')[0] != param){
                newAdditionalURL += temp + tempArray[i];
                temp = "&";
            }
        }
    }

    var rows_txt = temp + "" + param + "=" + paramVal;
    return baseURL + "?" + newAdditionalURL + rows_txt;
}

function getParameterByName(name) {
    name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
        results = regex.exec(location.search);
    return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}

function formIsValid() {
	return $("#addForm").valid();
}

function btnCancelClick() {
	href = document.location.href;
	 get = getParameterByName("action"); 
	 if(get != null) 
		href = updateURLParameter(href, 'action', 'cancel');
	 else
		 href += "?action=cancel";
	window.location = href;
};

$(document).ready(function(){
	$(".rowCell").click(function() {
		   var id = $(this).parent("tr").children("td").children("input").val();
		   href = document.location.href;
			href += "?action=edit&id="+id;
			window.location = href;
		});
});

function btnDelClick() {
	var selected = new Array();
	$("input:checkbox[name=selectUsers]:checked").each(function() {
       selected.push($(this).val());
	});
	href = document.location.href;
	get = getParameterByName("action"); 
	 if(get != null) 
		href = updateURLParameter(href, 'action', 'del');
	 else
		 href += "?action=del";
	 
	if(selected.length > 0)
		href += "&ids=";
	for (var i in selected) {
	    href += selected[i]+",";
	}
	href = href.substr(0, href.length-1);
	window.location = href;
};

$(document).ready(function(){
    $("#addForm").validate({  
       rules:{ 
    	   tbName:{
                required: true,
                minlength: 2,
                maxlength: 20,
            },
            tbSurname:{
                required: true,
                minlength: 2,
                maxlength: 30,
            },
            tbMiddlename:{
                required: true,
                minlength: 2,
                maxlength: 30,
            },
            tbMobile:{
                required: true,
                minlength: 6,
                maxlength: 16,
                digits:true,
            },
            tbHomephone:{
                required: false,
                minlength: 6,
                maxlength: 16,
                digits:true,
            },
            tbAddress:{
                required: false,
                minlength: 4,
                maxlength: 50,
            },
            tbMail:{
 	           required: false,
 	           minlength: 2,
 	           maxlength: 50,
 	           email: true,
 	       	},
       },
       messages:{   
  	     tbName:{
              required: "Имя обязательно для заполнения.",
              minlength: "Имя должно быть минимум 2 символа.",
              maxlength: "Имя должно быть максимум 20 символов.",
          },
          tbSurname:{
      		  required: "Фамилия обязательна для заполнения.",
              minlength: "Фамилия должна быть минимум 2 символа.",
              maxlength: "Фамилия должна быть максимум 30 символов.",
          },
          tbMiddlename:{
          	  required: "Отчество обязательно для заполнения.",
              minlength: "Отчество должно быть минимум 2 символа.",
              maxlength: "Отчество должно быть максимум 30 символов.",
          },
          tbMobile:{
          	  required: "Мобильный обязательно для заполнения.",
              minlength: "Мобильный должен быть минимум 6 символа.",
              maxlength: "Мобильный должен быть максимум 16 символов.",
              digits: "Мобильный должен быть только из цифр.",
        	},
        	tbHomephone:{
        		required: "Домашний телефон не обязательный для заполнения.",
        		minlength: "Домашний телефон должен быть минимум 6 символа.",
        		maxlength: "Домашний телефон должен быть максимум 16 символов.",
        		digits: "Домашний телефон должен быть только из цифр.",
        	},
        	tbAddress:{
        		required: "Адрес не обязательный для заполнения.",
        		minlength: "Адрес должен быть минимум 4 символа.",
        		maxlength: "Адрес должен быть максимум 50 символов.",
        	},
        	tbMail:{
        		required: "Email не обязательный для заполнения.",
        		minlength: "Email должен быть минимум 2 символа.",
        		maxlength: "Email должен быть максимум 50 символов.",
        		email: "Email не валиден. (Пример: shyrey_@mail.ru)."
        	},
       }      
    });
}); //end of ready